# -*- coding: utf-8 -*-
# @Time    : 2024/3/13 12:00
# @Author  : Liaogan
# @FileName: 2024读取excel操作.py


import xlrd

# 加载已存在的工作簿
wb= xlrd.open_workbook('./data/test_excel.xls')

#抓取所有sheet页的名称 列表
worksheets = wb.sheet_names()
print(worksheets)

#根据sheet索引或者名称获取sheet内容
sheet = wb["test20210813"] #通过名称访问，访问名为'test20210813'的工作表
print(sheet)
sheet1 = wb.sheets()   #通过索引顺序获取
print(sheet1[1])


#获取第4行的值
print(sheet.row_values(3))
#获取第3列的值
print(sheet.col_values(2))

#读取单元格数据
cell_A2= sheet.cell(3,4).value  #获取第1行，第3列的数据。
print(cell_A2)




# import openpyxl
# wb = openpyxl.load_workbook('./data/example.xlsx')  # 加载工作簿
# sheet = wb["worksheettitle"]  # 获取表单
# print(sheet)
# max_raw = sheet.max_row + 1  # 获取最大行数
# print(max_raw)
# print(sheet.cell(row=3, column=2).value)  #获取3行，2列的值
# print(sheet.cell(row=3,column=4).value)   #获取3行，4列的值
# openpyxl库不支持行列操作
# print(sheet.row_values(1))
# print(sheet.col_values(2))


# sheet1 = workbook.sheet_by_index(0)  #通过索引顺序获取
# print(sheet1)

# worksheet = wb.sheet_by_name('test20210813')#根据sheet名称获取sheet内容
# print(worksheet)#获取worksheet的名称

#获取整行和整列的值（数组）
# print(worksheet.row_values(3))
# print(worksheet.col_values(1))


#读取单元格数据
# cell_A2= sheet.cell(1,2).value
# cell_A3 = sheet.row(3)[4].value #使用行索引
# cell_A4 = sheet.col(1)[2].value #使用列索引
# print(cell_A2)

# def readexcel(sheetName):
#     workbook1=xlrd.open_workbook('./data/test_excel.xls',formatting_info=True)
#     worksheet=workbook1.sheet_by_name(sheetName)#
#     print(worksheet.row_values(2))#获取行数据
#     print(worksheet.col_values(2))#获取列数据
#     print(worksheet.cell(9,2).value)#获取单元格数据
# readexcel('Sheet2')


"""写操作"""
# import xlwt
# # 创建一个workbook 设置编码
# workbook = xlwt.Workbook(encoding='utf-8')
#
# # 创建一个worksheet
# worksheet = workbook.add_sheet('mysheet1234')
#
# # 写入excel
# # 参数对应 行, 列, 值
# for one in range(10):
#     worksheet.write(one,0, label = f'this is test+{one+2}')
#
# # 保存,运行后 会在当前目录生成一个“学习笔记.xls”
# workbook.save('./data/Excel_write12.xls')
